Windows 下的 cmd 不太好用,以下将其增强部分 *nix 的 shell 功能
摘要
将 cmd 改造成 shell,关键点:
- Gow
- Clink
Gow
Gow 是 Cygwin 的轻量级替代品,封装了 130 多个开源工具和 *nix 命令(编译成 exe ),常用的有:
- Shell : bash , zsh
- 压缩工具: gzip, zip, bzip2, compress
- SSH: putty, psftp, pscp, pageant, plink
- 下载工具 : curl, wget
- FTP: NcFTP
- 编辑器 :vim
- 字处理 : grep, agrep, less, cat, tail, head
- 文件工具: mv, cp, du, ls, pwd, rmdir, whereis
- 开发工具: make, diff, diff3, sleep, cvs, dos2unix, unix2dos
(上述列表来自oschina 的 Gow 说明)
下载并安装即可,环境变量会自动设置,并且可往/bin添加新的exe
Clink
Clink 是 cmd 增强工具,功能强大:
Tab补全
- 路径补全
- PATH 下的可执行文件
- 环境变量
更关键的是补全形式为显示列表,而非 cmd 和 PowerShell 里的逐个蹦
GNU readline
GNU readline 让 cmd 拥有 bash 的编辑和定制的能力:
- Ctrl-R, Ctrl-S (逆序)搜索历史命令
- Ctrl-A, Ctrl-S 到行首/尾
- Ctrl-U, Ctrl-K 删除到行首/尾
- Ctrl-L 清屏
- ……
其他
- 跨会话(Sessions)的保存
- 更多快捷键
- Ctrl-V 复制
- Ctrl-Z 撤销 /Undo
- (Alt-H 查看更多快捷键……)
- ……
设置 cmd 的 autorun 仅需:1
clink autorun -i
已知Bug
- *nix 下 ls 默认 ascii 编码,而 Windows 文件名编码为 GBK(cp936),固 ls 时中文不显示,建议可补充使用 dir
小结
使用 Gow 和 Clink ,使得 cmd 最薄弱的命令、补全和编辑功能得到补充。
参考并特别感谢:
- 开发者 bmatzelle 和 mridgers
- Scott 的“ better cmd ”及中文版